package net.qhzw.vip.qiyu.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import net.qhzw.vip.qiyu.dto.CommunityDto;
import net.qhzw.vip.qiyu.entity.SysCommunity;
import net.qhzw.vip.qiyu.util.PageAdapter;
import org.apache.ibatis.annotations.Param;

import java.util.List;

public interface SysCommunityMapper extends BaseMapper<SysCommunity> {

    /***
     * 根据社区名称查询社区id
     * @param communityName
     * @return
     */
    String findIdByCommunityName(String communityName);

    /***
     * 根据站点管理员获取站点id
     * @param adminId
     * @return
     */
    Long getIdByAdmin(Long adminId);


    /***
     * 总库量
     * @param id
     * @return
     */
    Long getTotalInventory(@Param("id") Long id);


    /***
     * 损坏车辆
     * @param id
     * @return
     */
    Long getDamageTheVeh(Long id);

    /***
     * 已租车辆骑遇
     * @param id
     * @return
     */
    Long getRentedVehicleQY(Long id);

    /**
     * 已租车辆骑缘
     *
     * @param id
     * @return
     */
    Long getRentedVehiclePY(Long id);

    /**
     * 已租电池骑遇
     *
     * @param id
     * @return
     */
    Long getRentedBatteryQ(Long id);

    /**
     * 已租电池骑缘
     *
     * @param id
     * @return
     */
    Long getRentedBatteryP(Long id);

    /***
     * 根据租车userId查询租车站点电话
     * @param userId
     * @return
     */
    String getSiteMobile(Long userId);

    /***
     * 根据userId查询
     * @param dtsUserId
     * @return
     */
    SysCommunity findByDtsUserId(Long dtsUserId);

    /**
     * 分页查询社区
     *
     * @param page
     * @param name
     * @param shopId
     * @return
     */
    List<CommunityDto> findByPage(@Param("page") PageAdapter page,
                                  @Param("name") String name,
                                  @Param("shopId") Long shopId);

    /**
     * 分页查询社区count
     *
     * @param name
     * @param shopId
     * @return
     */
    Long pageCount(@Param("name") String name,
                   @Param("shopId") Long shopId);
}